//============================================================================================
/**
 * @file	event_se_def.h
 * @brief	サウンド定義ファイル
 * @author	Nozomu Saito
 * @date	06.02.13
 */
//============================================================================================

#ifndef __EVENT_SE_DEF_H__
#define __EVENT_SE_DEF_H__

#define SE_PKTH_CATCH	(SEQ_SE_DP_SELECT)
#define SE_PKTH_FALL	(SEQ_SE_DP_BOX03)

#define SE_PKTH_TOSS	(SEQ_SE_DP_KON)
#define SE_PKTH_SUCCESS	(SEQ_SE_DP_PIRORIRO2)
#define SE_PKTH_FAILED	(SEQ_SE_DP_BOX03)

#define SE_PKTH_UP		(SEQ_SE_DP_GEAR)
#define SE_PKTH_DOWN	(SEQ_SE_DP_GEAR2)
#define SE_PKTH_HIT		(SEQ_SE_DP_BOX03)
#define SE_PKTH_JUMP	(SEQ_SE_DP_DANSA)

#define SE_PKTH_JUMP_FAILED	(SEQ_SE_DP_BOX03)	///< ジャンプ失敗音(ディグダ対策) 09.03.06 by hosaka genya

//////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////


//--------------------------------------------------------------------------------------------
//
//	THLON		共通
//	OPED		開会式、閉会式
//	RUN			マラソン
//	HURDLE		ハードル
//	PUSH		相撲
//	THROW		雪合戦
//	STEAL		フラッグ
//	BOUND		サッカー
//	BREAK		瓦割り
//	JUMP		トランポリン
//
//--------------------------------------------------------------------------------------------

//--------------------------------------------------------------------------------------------
//	共通
//--------------------------------------------------------------------------------------------
#define SE_THLON_GAME_COUNT		(SEQ_SE_GS_STARTCOUNT)				//ゲーム開始321カウント

//#define SE_THLON_GAME_START	(SEQ_SE_DP_PINPON)				//ゲーム開始
#define SE_THLON_GAME_START		(SEQ_SE_GS_CON_016)				//ゲーム開始

#define SE_THLON_GAME_END		(SEQ_SE_GS_FINISH)				//ゲーム終了

#define SE_THLON_MY_GOAL		(SEQ_SE_GS_MYGOAL)				//自分がゴールした音
#define SE_THLON_NPC_GOAL		(SEQ_SE_GS_NM12)				//誰かがゴールした音
#define SE_THLON_JUMP			(SEQ_SE_DP_DANSA)				//ジャンプ

//SePlayCheckをかけて、終了していたら再度再生させるようにしている(雪玉)
#define SE_THLON_RUNNING_OUT	(SEQ_SE_GS_W146)				//スタミナ切れ

#define SE_THLON_POINT1			(SEQ_SE_GS_POINT1)				//得点1
#define SE_THLON_POINT2			(SEQ_SE_GS_POINT2)				//得点2
#define SE_THLON_POINT3			(SEQ_SE_GS_POINT3)				//得点3

#define SE_THLON_TITLE			(SEQ_SE_GS_DODON)				//タイトルが出る時

//#define SE_THLON_LAST			(SEQ_SE_PL_FR05)				//ラストプレイ
//#define SE_THLON_LAST			(SEQ_SE_PL_PINPON)				//ラストプレイ(テレテレ)
#define SE_THLON_LAST			(SEQ_SE_DP_TRAIN04)				//ラストプレイ

#define SE_THLON_POKE_TOUCH		(SEQ_SE_GS_KYU)					//ポケモンをタッチした時

#define SE_THLON_LAST_THREE		(SEQ_SE_GS_ENDCOUNT)			//ラスト三秒
#define SE_THLON_NEWRECORD		(SEQ_SE_GS_NEWRECORD)			//ニューレコード

#define SE_THLON_PEN_TOUCH		(SEQ_SE_GS_TOUCHPEN)			//ゲーム開始時タッチ
#define SE_THLON_CHANGE_OK		(SEQ_SE_GS_CHANGE1)				//交代ボタンタッチ
#define SE_THLON_CHANGE_NG		(SEQ_SE_GS_CHANGE2)				//交代ボタンタッチ（交代不可時）


//--------------------------------------------------------------------------------------------
//	出場ポケモン選択画面
//--------------------------------------------------------------------------------------------
#define SE_THLON_POKE_SELECT	(SEQ_SE_DP_SELECT)				//カーソル移動音
#define SE_THLON_POKE_CATCH		(SEQ_SE_DP_BOX02)				//ポケモンつかむ
#define SE_THLON_POKE_PUT		(SEQ_SE_DP_BOX01)				//ポケモンおく


//--------------------------------------------------------------------------------------------
//	リザルト画面
//--------------------------------------------------------------------------------------------
#define SE_THLON_RANK_234		(SEQ_SE_GS_KEKKA)				//4,3,2位
#define SE_THLON_RANK_TOP		(SEQ_SE_GS_KEKKA)				//1位


//--------------------------------------------------------------------------------------------
//	開会式、閉会式
//--------------------------------------------------------------------------------------------
#define SE_OPED_VOICE1			(SEQ_SE_GS_VOICE01)				//歓声(小)
#define SE_OPED_VOICE2			(SEQ_SE_GS_VOICE03)				//歓声(中)
#define SE_OPED_VOICE3			(SEQ_SE_GS_VOICE02)				//歓声(大)
#define SE_OPED_VOICE7			(SEQ_SE_GS_VOICE07)				//口笛
#define SE_OPED_VOICE10			(SEQ_SE_GS_VOICE10)				//歓声
#define SE_OPED_DRUM			(SEQ_SE_DP_CON_033)				//ドラムロール

//#define SE_OPED_SCORE			(SEQ_SE_GS_CON_005)				//得点カウント音
#define SE_OPED_SCORE			(SEQ_SE_GS_THLON02)				//得点カウント音


//--------------------------------------------------------------------------------------------
//	ハードル(3匹)
//
//	ポケモン1匹ずつにPLAYERを割り当ててSEを再生させる
//	SEは基本1音で作成しないとダメそう。
//	NOISE、PSGの制限に注意！
//	(NOISE = 2つしかない)
//	(PSG = 6つしかない、BGM = 4、SE = 2として使用中。変更可能。)
//--------------------------------------------------------------------------------------------
#define SE_HURDLE_HIT			(SEQ_SE_GS_W436)				//ハードルぶつかり
#define SE_HURDLE_MOVE1			(SEQ_SE_GS_FW015_1)				//高速移動1
#define SE_HURDLE_MOVE2			(SEQ_SE_GS_FW015_2)				//高速移動2

//#define SE_HURDLE_MOVE3		(SEQ_SE_GS_FW015_2)				//高速移動3
#define SE_HURDLE_MOVE3			(SEQ_SE_GS_186)					//高速移動3

#define SE_HURDLE_LANDING		(SEQ_SE_GS_SUTYA)				//着地
#define SE_HURDLE_MOGURU		(SEQ_SE_GS_MOGURU)				//もぐる

//ハードルのパン設定
#define THLON_HURDLE_PAN_L		(-108)
#define THLON_HURDLE_PAN_C		(0)
#define THLON_HURDLE_PAN_R		(107)


//--------------------------------------------------------------------------------------------
//	マラソン(4匹)
//
//	画面内に出ているポケモンのみSEが鳴るようにする
//	自分ポケモンがPLAYER			= 1
//	それ以外ポケモンがPLAYER		= 2
//	あとは、画面に対してのPLAYER	= 3
//--------------------------------------------------------------------------------------------
#define SE_RUN_CHANGE_OUT1		(SEQ_SE_GS_W100)				//ボールが画面外に飛んでいく(1音化)
#define SE_RUN_CHANGE_IN1		(SEQ_SE_GS_NAGERU)				//次のポケモンボール投げる
#define SE_RUN_CHANGE_IN2		(SEQ_SE_GS_BOWA2)				//ボールが開く(1音化)
#define SE_RUN_DASH_EFF			(SEQ_SE_GS_FW015_2)				//ダッシュエフェクト

//#define SE_RUN_HIT			(SEQ_SE_GS_THLON_HIT)			//障害物にぶつかる(★保留)
//#define SE_RUN_HIT			(SEQ_SE_GS_THLON07)				//障害物にぶつかる(★保留)
#define SE_RUN_HIT				(SEQ_SE_GS_THLON06)				//障害物にぶつかる(★保留)

//#define SE_RUN_HIT_POKE		(SEQ_SE_GS_THLON_HIT)			//ポケモンにぶつかる
//#define SE_RUN_HIT_POKE		(SEQ_SE_GS_THLON07)				//ポケモンにぶつかる
#define SE_RUN_HIT_POKE			(SEQ_SE_GS_THLON06)				//ポケモンにぶつかる

//SE_THLON_POINT3 1周したら「ラップ」と同時

//#define SE_RUN_CHANGE_NG		(SEQ_SE_DP_BOX03)				//ポケモン交換NG


//--------------------------------------------------------------------------------------------
//	相撲(12匹)
//
//	自分のポケモンの音のみ鳴らす
//	落下音は自分以外のポケモンも鳴らす
//	(敵同士がぶつかる音などは鳴らさない)
//--------------------------------------------------------------------------------------------
//#define SE_PUSH_COUNT			(SEQ_SE_GS_DENSI01)				//タイムカウント
#define SE_PUSH_COUNT			(SEQ_SE_DP_TRAIN04)				//タイムカウント
#define SE_PUSH_FALL			(SEQ_SE_GS_PUSH02)				//ポケモン落下音

#define SE_PUSH_HIT				(SEQ_SE_GS_THLON06)				//ぶつかり音
//#define SE_PUSH_HIT			(SEQ_SE_GS_THLON05)				//ぶつかり音
//#define SE_PUSH_HIT			(SEQ_SE_GS_THLON07)				//ぶつかり音
//#define SE_PUSH_HIT			(SEQ_SE_GS_W255E)				//ぶつかり音
//#define SE_PUSH_HIT			(SEQ_SE_GS_THLON_HIT)			//ぶつかり音

#define SE_PUSH_SCORE_ON		(SEQ_SE_GS_TIMERZERO)			//上画面スコア表示に切り替え
#define SE_PUSH_NEXT_SET		(SEQ_SE_GS_PUSH03)				//ライトで次のセット開始



//--------------------------------------------------------------------------------------------
//	雪合戦(3匹)
//
//	自分のポケモンの音のみ鳴らす
//	サウンドデータ設定のPLAYERのまま再生
//--------------------------------------------------------------------------------------------
#define SE_THROW_BALL			(SEQ_SE_GS_FW104)				//玉投げる

//#define SE_THROW_MINE_HIT		(SEQ_SE_GS_BAN)					//自分に玉ヒット
//#define SE_THROW_MINE_HIT		(SEQ_SE_GS_W091)				//自分に玉ヒット
#define SE_THROW_MINE_HIT		(SEQ_SE_GS_TAMA)				//自分に玉ヒット

#define SE_THROW_ENEMY_HIT		(SE_THLON_POINT3)				//敵に玉ヒット(得点音を鳴らしている)

#define SE_THROW_BALL_UP		(SEQ_SE_GS_166)					//玉を大きくする
//#define SE_THROW_BALL_UP		(SEQ_SE_GS_NIGI)				//玉を大きくする
//#define SE_THROW_BALL_UP		(SEQ_SE_GS_160)					//玉を大きくする
//#define SE_THROW_BALL_UP		(SEQ_SE_DP_SELECT)				//玉を大きくする

//#define SE_THROW_BALL_HIT		(SEQ_SE_GS_BAN)					//自分の玉と敵の玉がぶつかる
#define SE_THROW_BALL_HIT		(SEQ_SE_GS_TAMA3)				//自分の玉と敵の玉がぶつかる

#define SE_THROW_BIG_MINE_HIT	(SEQ_SE_GS_TAMA2)				//自分に玉ヒット(大玉)


//--------------------------------------------------------------------------------------------
//	フラッグ(4匹)
//
//	自分のポケモンの音のみ鳴らす
//	例外として、
//	1)フラッグを取る音は、自分、敵で別の音を用意して、それぞれ鳴らす
//	2)ゴールしてポイント取得音は、自分、敵で別の音を用意して、それぞれ鳴らす
//
//	自分のフラッグを取る音は、取るたびに音程を上げていく(ゴールしたらリセット)
//--------------------------------------------------------------------------------------------
//#define SE_STEAL_FLAG			(SEQ_SE_DP_DECIDE)				//フラッグを取る(自分)
#define SE_STEAL_FLAG			(SEQ_SE_DP_PIRORIRO)			//フラッグを取る(自分)
#define SE_STEAL_FLAG_ENEMY		(SEQ_SE_DP_BOX02)				//フラッグを取る(敵)
#define SE_STEAL_GOAL_POINT		(SE_THLON_POINT3)				//ゴールしてポイント取得音(自分)
#define SE_STEAL_GOAL_POINT_ENEMY	(SE_THLON_POINT3)			//ゴールしてポイント取得音(敵)

//#define SE_STEAL_HIT			(SEQ_SE_GS_THLON_HIT)			//ポケモンにぶつかる
//#define SE_STEAL_HIT			(SEQ_SE_GS_THLON07)				//ポケモンにぶつかる
#define SE_STEAL_HIT			(SEQ_SE_GS_THLON06)				//ポケモンにぶつかる

//#define SE_STEAL_SAND_EFF		(SEQ_SE_GS_FW015_2)				//砂エフェクト
#define SE_STEAL_SAND_EFF		(SEQ_SE_GS_SAA)				//砂エフェクト

//未使用
//#define SE_STEAL_POKE_OUT		(SEQ_SE_DP_NIGERU2)				//ポケモン交代アウト
#define SE_STEAL_POKE_OUT		(SEQ_SE_DP_CARD10)				//ポケモン交代アウト
#define SE_STEAL_POKE_IN		(SEQ_SE_DP_DANSA4)				//ポケモン交代イン

#define SE_STEAL_FLAG_NG		(SEQ_SE_GS_HATAMOTENAI)			//満タンでフラッグ取れない


//--------------------------------------------------------------------------------------------
//	サッカー(?匹)
//
//	自分、敵の全ての音を鳴らす
//--------------------------------------------------------------------------------------------
#define SE_BOUND_SHOT			(SEQ_SE_GS_SHOT)				//シュートを打った時
#define SE_BOUND_WH				(SEQ_SE_GS_WH01)				//ホイッスル
#define SE_BOUND_GOAL			(SEQ_SE_GS_GOAL01)				//ゴール歓声
#define SE_BOUND_NORMAL_BALL	(SEQ_SE_GS_THLON09)				//ボール出現
#define SE_BOUND_SUPER_BALL		(SEQ_SE_GS_APPEAR)				//ゴールデンボール出現
#define SE_BOUND_WH_GOAL		(SEQ_SE_GS_WH02)				//ホイッスル＋ゴール
#define SE_BOUND_BALL_EFF		(SEQ_SE_GS_SHOT)				//ボールのシュートエフェクト
#define SE_BOUND_DASH			(SEQ_SE_GS_DASH)				//自ポケのダッシュ


//--------------------------------------------------------------------------------------------
//	かわらわり(1匹)
//
//	自分のポケモンの音のみ鳴らす
//--------------------------------------------------------------------------------------------
//#define SE_BREAK_ATTACK01		(SEQ_SE_DP_W327)				//ブロックに体当たり
#define SE_BREAK_ATTACK01		(SEQ_SE_GS_W260)				//ブロックに体当たり

//#define SE_BREAK_ATTACK02		(SEQ_SE_DP_SELECT)				//ブロックに体当たり(未使用)

//#define SE_BREAK_ATTACK03		(SEQ_SE_GS_W085)				//ブロックが半壊状態になる音
#define SE_BREAK_ATTACK03		(SEQ_SE_GS_W260)				//ブロックが半壊状態になる音

//#define SE_BREAK_ATTACK04		(SEQ_SE_DP_W291)				//ブロックが壊れた音
//#define SE_BREAK_ATTACK04		(SEQ_SE_DP_W452)				//ブロックが壊れた音
//#define SE_BREAK_ATTACK04		(SEQ_SE_DP_W088)				//ブロックが壊れた音
//#define SE_BREAK_ATTACK04		(SEQ_SE_GS_W280B)				//ブロックが壊れた音
#define SE_BREAK_ATTACK04		(SEQ_SE_GS_W085)				//ブロックが壊れた音

//#define SE_BREAK_CRITICAL		(SEQ_SE_DP_W025C)				//クリティカルヒット
//#define SE_BREAK_CRITICAL		(SEQ_SE_DP_186)					//クリティカルヒット
//#define SE_BREAK_CRITICAL		(SEQ_SE_GS_W015)				//クリティカルヒット
#define SE_BREAK_CRITICAL		(SEQ_SE_GS_KOUKA_H)				//クリティカルヒット


//#define SE_BREAK_TILE_ADD		(SEQ_SE_DP_SELECT)				//瓦を積む音
//#define SE_BREAK_TILE_ADD		(SEQ_SE_DP_W227)				//瓦を積む音
//#define SE_BREAK_TILE_ADD		(SEQ_SE_DP_EGG01)				//瓦を積む音
//#define SE_BREAK_TILE_ADD		(SEQ_SE_GS_HAMARU)				//瓦を積む音
#define SE_BREAK_TILE_ADD		(SEQ_SE_GS_KAWARATUMU)			//瓦を積む音

//#define SE_BREAK_TILE_OK		(SEQ_SE_DP_SELECT)				//瓦を補充完了
#define SE_BREAK_TILE_OK		(SEQ_SE_GS_KI_GASYAN)			//瓦を補充完了

#define SE_BREAK_CHANGE_OUT1	(SEQ_SE_GS_W100)				//ボールが画面外に飛んでいく(1音化)
#define SE_BREAK_CHANGE_IN1		(SEQ_SE_GS_NAGERU)				//次のポケモンボール投げる
#define SE_BREAK_CHANGE_IN2		(SEQ_SE_GS_BOWA2)				//ボールが開く(1音化)

//#define SE_BREAK_BLUE			(SEQ_SE_GS_W052)				//青いオーラ
#define SE_BREAK_BLUE			(SEQ_SE_GS_W082)				//青いオーラ
#define SE_BREAK_RED			(SEQ_SE_GS_186_2)				//赤いオーラ


//--------------------------------------------------------------------------------------------
//	トランポリン(3匹)
//
//	ポケモン1匹ずつにPLAYERを割り当ててSEを再生させる
//	SEは基本1音で作成しないとダメそう。
//	NOISE、PSGの制限に注意！
//	(NOISE = 2つしかない)
//	(PSG = 6つしかない、BGM = 4、SE = 2として使用中。変更可能。)
//
//	ぶつかり、跳ねるは固定のプレイヤーで再生
//
//	ジャンプ音が１つしか再生されないようになったのでパンはふらない
//--------------------------------------------------------------------------------------------
//#define SE_JUMP_HIT			(SEQ_SE_GS_THLON_HIT)			//ポケモンぶつかり
//#define SE_JUMP_HIT			(SEQ_SE_GS_THLON07)				//ポケモンぶつかり
#define SE_JUMP_HIT				(SEQ_SE_GS_THLON06)				//ポケモンぶつかり

#define SE_JUMP_UP				(SEQ_SE_DP_DANSA5)				//跳ねる

#define SE_JUMP_LAMP_GET		(SEQ_SE_GS_POINT1)				//ランプゲット(5段階音程かえる)
//#define SE_JUMP_LAMP_GET		(SEQ_SE_GS_AHH)					//ランプゲット(5段階音程かえる)

//トランポリンのピッチ設定
#define THLON_JUMP_PITCH_LV1		(0)
#define THLON_JUMP_PITCH_LV2		(64*2)
#define THLON_JUMP_PITCH_LV3		(64*4)
#define THLON_JUMP_PITCH_LV4		(64*5)
#define THLON_JUMP_PITCH_LV5		(64*7)
#define THLON_JUMP_PITCH_LV6		(64*9)
#define THLON_JUMP_PITCH_LV7		(64*11)
#define THLON_JUMP_PITCH_LV8		(64*12)

#define SE_JUMP_TOUCH			(SEQ_SE_GS_GUGU)				//タッチペンを離した時


//--------------------------------------------------------------------------------------------
//	UFOキャッチ(?匹)
//
//--------------------------------------------------------------------------------------------
#define SE_CATCH_UP				(SEQ_SE_GS_UFO_JUMP)			//ジャンプ音
#define SE_CATCH_UFO_GET		(SEQ_SE_GS_W280)				//UFOゲット音
#define SE_CATCH_UFO_DISCHARGE	(SEQ_SE_GS_W030)				//UFO発射音
#define SE_CATCH_FALL			(SEQ_SE_GS_PUSH02)				//ポケモン落下音
#define SE_CATCH_CHANGE_IN2		(SEQ_SE_GS_BOWA2)				//復活音
#define SE_CATCH_HIT			(SEQ_SE_GS_THLON06)				//ぶつかり音

//得点ゲットのピッチ設定
#define THLON_CATCH_PITCH_LV1		(0)
#define THLON_CATCH_PITCH_LV2		(64*2)
#define THLON_CATCH_PITCH_LV3		(64*4)
#define THLON_CATCH_PITCH_LV4		(64*5)
#define THLON_CATCH_PITCH_LV5		(64*7)
#define THLON_CATCH_PITCH_LV6		(64*9)
#define THLON_CATCH_PITCH_LV7		(64*11)
#define THLON_CATCH_PITCH_LV8		(64*12)


//--------------------------------------------------------------------------------------------
//
//
//
//--------------------------------------------------------------------------------------------


#endif	//__EVENT_SE_DEF_H__

